package com.rxst.msg.server;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.rxst.msg.dto.search.MsgxUserMenuSearchDto;
import com.rxst.msg.entity.MsgxUserMenuEntity;
import com.rxst.msg.entity.MsgxUserMenuEntity;
import com.rxst.msg.vo.MsgxUserMenuVo;

import java.util.List;

/**
 * 用户菜单中间表
 *
 * @author rxst
 * @email rxst@gmail.com
 * @date 2021-08-19 11:47:01
 */
public interface MsgxUserMenuService extends IService<MsgxUserMenuEntity> {
    /**
     * 列表
     *
     * @param vo
     * @return
     */
    List<MsgxUserMenuVo> list(MsgxUserMenuSearchDto vo);

    /**
     * 分页
     *
     * @param vo
     * @return
     */
    PageInfo<MsgxUserMenuVo> page(MsgxUserMenuSearchDto vo);

    /**
     * 保存
     *
     * @param dto 参数
     * @return 操作状态
     */
    Boolean saveEntity(MsgxUserMenuEntity dto);

    /**
     * 批量新增
     *
     * @param list 条件
     * @return 操作状态
     */
    Boolean saveEntityBatch(List<MsgxUserMenuEntity> list);

    /**
     * 修改
     *
     * @param dto 参数
     * @return 操作状态
     */
    Boolean updateEntity(MsgxUserMenuEntity dto);

    /**
     * 批量修改
     *
     * @param list 条件
     * @return 操作状态
     */
    Boolean updateEntityBatch(List<MsgxUserMenuEntity> list);

    /**
     * 逻辑删除
     *
     * @param id 主键
     */
    void deleteLogic(Long id);

    /**
     * 批量逻辑删除
     *
     * @param ids 主键集合
     */
    void deleteLogicByIds(List<Long> ids);
}

